//
//  YHWelcomeVC.swift
//  XLWB
//
//  Created by key on 16/6/26.
//  Copyright © 2016年 apple. All rights reserved.
//

import UIKit
import SDWebImage

class YHWelcomeVC: UIViewController {

    //MARK: - 创建底层图片框 懒加载
    private lazy var bgImageView: UIImageView = {
        
        let bg = UIImageView(image: UIImage(named: "ad_background"))
        
        return bg
        
    }()
    
    //MARK: - 创建头像图片框
    private lazy var iconImageView: UIImageView = {
        
        let icon = UIImageView(image: UIImage(named: "avatar_default_big"))
        
        icon.layer.cornerRadius = 50
        icon.layer.masksToBounds = true
        
        icon.layer.borderColor = themeColor.CGColor
        icon.layer.borderWidth = 3
        
        icon.sd_setImageWithURL(NSURL(string: YHUserAccountTool.sharedUserAccountTool.userAccount?.avatar_large ?? ""), placeholderImage: UIImage(named: "ad_background"))
        
        return icon
        
    }()
    
    //MARK: - 创建头像下方文字框
    private lazy var iconMessage: UILabel = {
        
       let message = UILabel()
        
        message.text = "欢迎回来"
        
        message.textAlignment = .Center
        
        message.font = UIFont.systemFontOfSize(18)
        
        message.alpha = 0
        
        message.textColor = UIColor.grayColor()
        
        return message

    }()
    
    //MARK: - 加载视图时 设置原有视图为底层图片框View
    override func loadView() {
        
        view = bgImageView
    }
    
    
    
    
    override func viewDidLoad() {
        super.viewDidLoad()

        //添加视图
        setUpUI()
    }
    
    //MARk: - 添加视图
    func setUpUI() {
        
        //添加头像 和 描述文字
        view.addSubview(iconImageView)
        view.addSubview(iconMessage)
        
        //添加约束
        setSubViewFrame()

    }
    
    //MARK: - 添加约束
    func setSubViewFrame() {
        
        //头像图标
        iconImageView.snp_makeConstraints { (make) -> Void in
            
            make.top.equalTo(view).offset(400)
            make.size.equalTo(CGSize(width: 100, height: 100))
            make.centerX.equalTo(view)
            
        }
        
        //描述文字
        iconMessage.snp_makeConstraints { (make) -> Void in
            
            make.top.equalTo(iconImageView.snp_bottom).offset(16)
            make.centerX.equalTo(view)
            
        }
        
    }
    
    
    //MARK: - 视图加载完成 调整头像和描述文字 位置
    override func viewDidAppear(animated: Bool) {
        
        //重新设置 头像位置 更新约束  只有当约束的对象不变时 此方法有效
        iconImageView.snp_updateConstraints { (make) -> Void in
            
            make.top.equalTo(view).offset(100)
            
        }
        
        
        //动画效果
        /*
        
        参数一 动画执行时间
        参数二 动画延迟多久 开始执行
        参数三 阻尼系数
        参数四 启动速度
        参数五 不知道什么鬼
        参数六 闭包 动画要做的事情
        参数七 闭包 动画执行结束后做的事情
        
        */
        UIView.animateWithDuration(3, delay: 1, usingSpringWithDamping: 0.6, initialSpringVelocity: 0, options: [], animations: { () -> Void in
            
            //约束过控件后 刷新界面
            self.view.layoutIfNeeded()
            
            
            }) { (_) -> Void in
                
                //动画结束后 开启新动画 慢慢显示文字
                UIView.animateWithDuration(2, animations: { () -> Void in
                    
                    self.iconMessage.alpha = 1
                    
                    }, completion: { (_) -> Void in
                        
                        //动画结束 重新设置根控制器 为主页
                        let app = UIApplication.sharedApplication()
                        
                        app.keyWindow?.rootViewController = YHMainBarVC()
                        
                        
                        
                })

        }
        
    }

    
    
}
